<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // 正确写法
        /* Array.prototype.sum = function() {
            let sum = 0;
            for (let i = 0; i < this.length; i++) {
                sum += this[i];
            }
            return sum;
        }; */

        // 这种写法不可以
        /* Array.prototype = {
            sum: function() {
                let sum = 0;
                for (let i = 0; i < this.length; i++) {
                    sum += this[i];
                }
                return sum;
            }
        }; */

        console.log(Array.prototype);
        const o = {
            sum: function() {
                let sum = 0;
                for (let i = 0; i < this.length; i++) {
                    sum += this[i];
                }
                return sum;
            }
        };
        Array.prototype = o;

        const arr = [1, 2, 3];
        console.log(arr);
        console.log(typeof(arr));
        console.log(arr.__proto__);
        console.log(arr.__proto__ === Array.prototype); // true
        console.log(arr.__proto__ === o); // false
        console.log(Array.prototype === Array.prototype);
        console.log(Array.prototype === o);
        // console.log(arr.sum());
    </script>
</body>

</html>